#ifndef _CLIPBOARD
#define _CLIPBOARD

#include <string>
#include <vector>
#ifdef WIN32
#include <itoken.hpp>
#else
#include "../itoken/itoken.hpp"
#endif

class clipboard
{
public:

	inline clipboard() {};
	clipboard(itoken * token);
  clipboard(itoken * token, std::vector<unsigned short>& _indices);


  static void read_from(itoken * token);
  static void read_from(itoken * token, std::vector<unsigned short> & _idx);

	static void reset();

	virtual int write_buffer()=0;
	virtual int clear_buffer() =0;

protected:
static	itoken * token;
static std::vector<unsigned short> indices;

	
private:
virtual int read_buffer() =0;  
void read();
	
};

#endif
